/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package subSetor;

import java.util.List;
import util.ErroAcessoRepositorioException;

/**
 *
 * @author Administrador
 */
public class CadastroSubSetor {

    /**
     *
     */

    private RepositorioSubSetor objRepositorioSubSetor = null;

/**
     *
     * @param objRepositorioSubSetor
     * @throws ErroAcessoRepositorioException
     */

 public CadastroSubSetor(RepositorioSubSetor objRepositorioSubSetor) throws ErroAcessoRepositorioException {
        this.objRepositorioSubSetor = objRepositorioSubSetor;
    }

    /**
     * Metodo que ira cadastrar o SubSetor
     *
     * @param SubSetor objSubSetor
     * @return void
     */
    public void cadastrarAtualizar(SubSetor objSubSetor) throws ErroAcessoRepositorioException {
        this.objRepositorioSubSetor.cadastrarAtualizar(objSubSetor);
    }

    /**
     * Metodo que ira produrar o SubSetor
     *
     * @param int idSubSetor
     * @return void
     */
    public SubSetor procurar(int idSubSetor) throws SubSetorNaoCadastradoException, ErroAcessoRepositorioException {
        return this.objRepositorioSubSetor.procurar(idSubSetor);
    }

    /**
     * Metodo que ira verificar a existência do SubSetor
     *
     * @param int idSubSetor
     * @return void
     */
    public boolean existe(int idSubSetor) throws ErroAcessoRepositorioException {
        return this.objRepositorioSubSetor.existe(idSubSetor);
    }

    /**
     * Metodo que ira listar os SubSetors
     *
     * @return Collection
     */
    public List<SubSetor> listar(String strComplemento) throws Exception, ErroAcessoRepositorioException {
        return this.objRepositorioSubSetor.listar(strComplemento);
    }

    /**
     * Método que ira remover o SubSetor do banco
     *
     * @param idSubSetor
     */
    public void remover(int idSubSetor) throws SubSetorNaoCadastradoException, ErroAcessoRepositorioException {
        this.objRepositorioSubSetor.remover(idSubSetor);
    }
    
    /**
     * Metodo que ira listar o SubSetor
     *
     * @return Collection
     */
    public List<SubSetor> listarAtivos() throws Exception, ErroAcessoRepositorioException {
        return this.objRepositorioSubSetor.listarAtivos();
    }
    
    /**
     * Metodo que ira listar os Categorias
     *
     * @return Collection
     */
    public List<SubSetor> procurarPorDescricaoPorSetor(String descricaoSubSetor, int idSetor) throws Exception, ErroAcessoRepositorioException {
        return this.objRepositorioSubSetor.procurarPorDescricaoPorSetor(descricaoSubSetor, idSetor);
    }
}
